package file.day9_25.day09;

import file.day9_24.day08.Point;

import java.util.*;

public class 重载CollectionsSort {
    public static void main(String[] args) {
        List<Point> l = new ArrayList<>();
        List a = new LinkedList();
        l.add(new Point(1,2));
        l.add(new Point(2,3));
        l.add(new Point(3,4));
        l.add(new Point(4,5));
//        Comparator<Point> com = new Comparator<Point>() {
//            public int compare(Point o2, Point o1) {
//                int num1 = o1.getA() + o1.getB();//
//                int num2 = o2.getA() + o2.getB();//
//                return num1 - num2;//ture,不换，false，换，降序
//                return num2 - num1;//升序
//            }
//        };

        //由于Comparator属于函数式接口，所以可以使用Lambda缩写

//        Collections.sort(l,(o2,o1)->{
//            int num1 = o1.getA() + o1.getB();
//            int num2 = o2.getA() + o2.getB();
//            return num2 - num1;
//        });

        //JKD.8之后，List也提供了sort方法
        l.sort((o2,o1)->{
            int num1 = o1.getA() + o1.getB();
            int num2 = o2.getA() + o2.getB();
            return num2 - num1;
        });


        System.out.println(l);

    }
}
